package com.gxa.service;

import com.gxa.common.PaginationResult;
import com.gxa.pojo.Branch;
import com.gxa.pojo.ClazzLibrary;
import com.gxa.pojo.Headquarters;

import java.util.List;

/**
 * Created with IntelliJ IDEA.
 * User: zrf
 * Date: 2020/10/29 9:45
 * Description:
 * Version: V1.0
 */
public interface StoreService {
    /**
     * 根据id查询分店信息
     *
     * @param
     * @return 实例对象
     */
    public Branch selBreaChMag(Integer branchCode);

    /**
     * 查询总店信息
     *
     * @param
     * @return 实例对象
     */
    PaginationResult selCupro(Integer currentPage, Integer pageSize);

    /**
     * 根据名称查询总店信息
     *
     * @param
     * @return 实例对象
     */
    Headquarters selHeadqa(String headquarters_name);

    /**
     * 编辑总店信息
     *
     * @param
     * @return 实例对象
     */
    int updateHeadq(Headquarters headquarters);

    /**
     * 增加总店信息
     *
     * @param
     * @return 实例对象
     */
    int addHeadq(Headquarters headquarters);

    /**
     * 删除总店信息
     *
     * @param
     * @return 实例对象
     */
    int delHeadq(Integer headquartersCode);



    /**
     * 搜索所有分店信息信息
     *
     * @param
     * @return 实例对象
     */
    PaginationResult selBreach(Integer currentPage, Integer pageSize);

    /**
     * 搜索所有类库信息信息
     *
     * @param
     * @return 实例对象
     */
    PaginationResult selClazzb(Integer headquartersCode, Integer currentPage, Integer pageSize);

    /**
     * 增加分店信息
     *
     * @param
     * @return 实例对象
     */
    int addBranch(Branch branch);

    /**
     * 增加类库信息
     *
     * @param
     * @return 实例对象
     */
    int addClazz(ClazzLibrary clazzLibrary);

    /**
     * 编辑类库信息
     *
     * @param
     * @return 实例对象
     */
    int updateClazz(ClazzLibrary clazzLibrary);

    /**
     * 删除类库信息
     *
     * @param
     * @return 实例对象
     */
    int delClazz(Integer clazzLibraryId);

    /**
     * 编辑分店信息
     *
     * @param
     * @return 实例对象
     */
    int updateBranch(Branch branch);

    /**
     * 删除分店信息
     *
     * @param
     * @return 实例对象
     */
    int delBranch(Integer branchCode);

    /**
     * 搜索所有分店信息
     *
     * @param
     * @return 实例对象
     */
    List<Branch> queryBranch();

    /**
     * 搜索总部code
     *
     * @param
     * @return 实例对象
     */
    List<Integer> selHeadqaCode();
}
